Semantic answering system and method

ABSTRACT

Answering System enables a user to input a query and responds with answers. Server stores an indexed database of a plurality of S-A-O&#39;s (subject-action-object). User generates the query that includes query elements (A-O), (S-A), or (S-X-O), or element (S). The server identifies the database element S, O, or A, or elements (A-O) associated with a respective knowledge base S-A-O that includes the query element(s) in response to the server receiving the query and generates a natural language answer S-A-O that includes the identified and the query elements(s) and transmits the answer to the user apparatus that provides an audio or visual response. The server can conduct WWW searches for documents with S-A-O elements that match query element(s) and adds them to the database, thus treating the WWW as an available knowledge base.

RELATED APPLICATIONS

This is a continuation-in-part application of U.S. patent application Ser. No. 09/815,260 filed Mar. 22, 2001 now abandoned entitled NATURAL LANGUAGE PROCESSING AND QUERY DRIVEN INFORMATION RETRIEVAL, which is a continuing application of U.S. Provisional Application Ser. No. 60/198,782 filed Apr. 20, 2000. This is also a continuation-in-part of U.S. Provisional Patent Application Ser. No. 60/249,610 filed Nov. 17, 2000. Benefits of priorities to all related applications are claimed.

BACKGROUND

The present invention relates to Query and Response information retrieval systems and, more particularly, to such systems capable of receiving a user entered question, processing the data representing the question, searching local and/or web based databases for information relevant to an answer to user's query, and conveying such answer information to the user.

Systems of this general type are known that enable a user to access a preprocessed database of predetermined standard answers to a predetermined set of user queries. The standard system responds to a user-entered query by processing the query to determine one or a combination of key words. The system includes a look-up table to determine which predetermined, stored standard answer or answers have the key word or combination of key words may be responsive to the query. The system activates a link to the predetermined, stored answer (sentence) that includes the matched key word(s) between the user query and the look-up table.

Such known systems are quite limited in the scope or subject matter of the queries that the system can properly process. For example, if user query comprises words that lack all the key words pre-stored in the look-up table, then the system cannot respond with any stored answer or it may respond with an incorrect prestored answer. Also, the known systems are limited to a particular subject matter, such as shareholder inquiries of a particular stock company, in order to focus the queries on more likely pre-stored key words.

Accordingly, there is a need for a system that does not rely on pre-stored key work matching and that can process the user query to gain an understanding of information or concepts requested, then searching preprocessed and knowledge bases of storing candidate concepts with links to databases of full documents in which such concepts appear. In addition, there is a need for such a system that can dynamically search all databases of stored documents on the World Wide Web for concept(s) in the user query, downloads candidate documents, processes them dynamically to determine if the downloaded document contains an answer to the query. If it does, then extracting the answer and presenting it to the user and adding the query, answer, and document link to the answer database.

SUMMARY OF EXEMPLARY EMBODIMENTS OF THE INVENTION

The present invention relates to a system to enable a user to ask a question (query) and for providing the user with one or more answers or solutions to such question. Since the system according to the principles of the present invention processes a query and generates answers employs the same methods regardless of the query format (X-A-O), (S-X-X), (S-X-O), or (S-A-X), where “X” is the absence of an element, and responds with answers in preferably (S-A-O) format, only the processing of query format (X-A-O) will be described in detail below but it will be understood that such processing applies to the other query formats as well.

The present system includes software for processing such query into, EG, Action-Object (A-O) format and includes a knowledge base or database into which a plurality of documents or other information have been or shall be semantically processed which knowledge base or database associates a plurality of solutions or subjects (S's) in association with specific A-O's as well as links for each A-O to the source document in which the A-O appears. The database can be server resident and in response to a user A-O query, transmits to the user some or all of the solutions stored in association with the specific A-O query. If no solutions (S's) reside in the database, the system searches the web for available web data, finds one or more entries (hereafter “documents”) with relevant S-A-O, updates the database by storing the query A-O and particular S in association with the stored query A-O along with a link to the source document and transmits the answer (S) or answers (S₁, S₂, . . . ) to the user. Preferably, as seen in the word examples below, the answers are conveyed in S-A-O format for the user's convenience and reminding user of the query user submitted, particularly since the Web search may take a few minutes and the system calls the user back with an answer a described below.

In addition to user being able to use user's PC keyboard or mouse to initiate a query, a key feature of exemplary embodiments according to the principles of the present invention, enables user to use an ordinary telephone or cellular phone to access and query the system verbally and to receive an audio or visual display response containing the answer or solution.

An alternate feature of an alternate embodiment includes including in the user telephone or cellular phone a micro chip bearing software that converts voice to digital text, processes the query into A-O format, accesses the database server via the web, receives the solutions or answers from the web based server, converts it from text to synthesized voice or visual display data for user perception at users hand unit.

Other and further objects, benefits, and features shall become apparent with the following detailed description and drawings.

DESCRIPTION OF DRAWINGS

FIG. 1 is a schematic representation of a system according to the principles of the present invention.

FIG. 2 is a block diagram of the principal steps and elements of the system of FIG. 1.

FIG. 3 is similar to FIG. 2 showing an alternate embodiment of the present invention.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS OF THE INVENTION

One example of a Semantic Answering System (SAS) according to the principles of the present invention includes voice-to-text transformation device or/and software system, client software module, a server storing the knowledge base or database of semantically created answers.

A user asks a question by voice, using microphone or telephone; the sound is transformed into text by software or special semantic chip, which is able to recognize the question. For example, the user asks, “How can I reduce cholesterol?” Text-to-voice device or software transforms sound into a text file as a query. One exemplary method of achieving this is disclosed in U.S. patent application Ser. No. 09/815,260 filed Mar. 22, 2001. The Client software module adds URL to the query; URL/query is sent over the World Wide Web to the Server, which contains the knowledge base of semantic index in Subject-Action-Object format.

Examples of Semantic Index

Assume the following are stored in the index:

Dietary measure - reduce - cholesterol saturation; (S₁) (A) (O) Clofibrate - reduce - cholesterol. (S₂) (A) (O)

The server searches the database for (Ss) answers which match the query, EG, (A-O) and transmits them in HTML format over the Internet back to client software module, where A-O and answers (S₁ and S₂) are transformed into text files. Text files are transformed into voice by text-to-voice device or/and software system such as digital computer.

Alternately, if there is no answer in the database to the user query (A-O), semantic indexing engine processes the Web to find and retrieve relevant documents, then creates subject-action-object entries index and sends the index entries over the Internet.

-   Generally, the following signal transformations occur: (See FIG. 1)

User asks a question to a microphone 1.

The software or the hardware-level apparatus 2 converts the voice data stream into a plain text. Alternatively, user with the aid of keyboard, scanner, or other input device 3 may enter plain text. Problem statement is extracted from the plain text. The format of the problem statement is Action-Object (A-O). Client software 4 codes the Problem statement as parameter of the URL query.

URL Query 5 is sent over the World Wide Web to the Semantic Server.

The Semantic Server 6 searches for the available solutions in the semantic database. One example of a Semantic S-A-O processing method is disclosed in U.S. patent application Ser. No. 09/541,182 filed Apr. 3, 2000. If solutions (answers) exist, they are returned in HTML format. The representation of the solutions is basically Subject-Action-Object (S-A-O). If solution is not found in the Semantic Database 7, additional search on the WWW is performed. User will be later notified about the results. The search can be performed on a regular basis to accommodate the changes of the Internet.

The solutions are filtered by server 6 or the user PC or device and can be stored on the User PC. The links to the source documents can be stored in the Semantic database or client PC, as well. User can be notified by email that there are new solutions to his (her) problems in the Semantic Database.

Text-to-Voice module 1 generates the audio stream from the filtered solutions.

User listens to the answers in sequential order to the user's query.

On the whole, the SAS 10 delivers the answers to the user's questions. Answers can also be visually displayed or printed out as desired by user's PC.

If the current database does not contain solutions to the user's problem, the Semantic Server performs a Web search. The results are converted to the Subject-Action-Object format. The components of the semantic database index are updated. The user may be notified about solution availability by, but not limited to, one of the following methods:

-   1. During the next interaction with SAS -   2. Over the telephone -   3. Over email -   4. Over a pager     The components of SAS are (The following numbers relate to the     blocks of FIG. 2):     -   21. User. The user asks the questions and receives the answers         to these questions.     -    Output: Question containing a problem that is expressed in user         voice, or as result of interaction with User PC through         microphone, keyboard, scanner, etc.     -   22. Voice Receiver. VR converts the user voice to the electrical         signals. Examples include headset microphone, telephone         microphone, etc. The component includes also the sound card if         it is used with the computer.     -    Input: User voice     -    Output: Voice stream     -   23. Voice Recognition Software. This software converts the         signals coming from the Voice Receiver into plain text. Examples         of Voice Recognition Software include, but not limited to         ViaVoice™ software from IBM Corporation, or Dragon         NaturallySpeaking from Dragon Systems.     -    Input: Voice stream     -    Output: Plain text that corresponds to the user's voice.     -   24. Client Software Module. Component 24 represents a module for         generating queries to be sent over the Internet. The Module         formulates a problem contained in the user's question. Format of         the problem is Action-Object (A-O). This module also supports         plain text input as an extra functionality.     -    Input: Plain text     -    Output: Problem statement in form Action-Object.     -   25. Internet Connection. Module 25 converts Action-Object         problem statement into URL that is transmitted over one of the         following connections, but not limited to Network Connection,         Modem Connection, and Wireless Connection. The additional         parameters of the URL may include use synonyms and constraints         with the Semantic Server. See U.S. patent application Ser. No.         09/785,018 filed Feb. 16, 2001 and Ser. No. 09/814,698 filed         Apr. 24, 2001.     -    Input: Problem statement in form Action-Object.     -    Output: URL.     -   26. Semantic Server/Semantic Database. Semantic server 26         intercepts the URL. Parameters of an URL define the algorithm of         the server functioning. In a general case the semantic server         generates SQL query understandable by Semantic Database. See for         example: www.cobrain.com     -    Input: URL.     -    Output: SQL Query.     -   27. Semantic Database/Semantic Server. Semantic Database or         Knowledge Base 27 stores the available solutions to the users'         problems (A-O's). The database content is periodically updated.         Content is optionally updated based in the users' requests. The         solutions are stored in the form Subject-Action-Object. If         Action-Object problem statement has similarity with at least one         of the Subject-Action-Object solution, then it is retrieved from         database 27. The maximal number of the solutions is indicated as         one of the URL parameters. The results are presented as the         recordsets. Semantic Server transforms these recordsets to the         HTML pages.     -    Input: SQL Query.     -    Output: HTML page.     -   28. Internet Connection. Internet Connection 28 delivers the Web         page containing solutions in HTML format to the Client computer         or device resident Software Module which transforms the HTML         format into plain text format.     -    Input: HTML page.     -    Output: Plain text.     -   29. Client Software Module. The module filters out the results.         One of the following, but not limited to, set of filters may be         applied: Subject length, specific terms (such as stop words “be”         “is”, etc.), number of solutions, etc. The results may be in         Subject-Action-Object format, or may contain the source         sentences. The following information can be stored at the User         PC:         -   Result as Subject-Action-Object;         -   Sentence of the source document that contains this result;         -   [Hyper]link to the source document.     -    The filters that can be used for voice output are:         -   Subject or Object are too long         -   The total S-A-O length is too long     -    The user is notified if there are more results than allowed to         be spoken.     -    Input: Plain text.     -    Output: Plain text.     -    As an alternative, this filtering function can be resident in         the semantic server block 26 so that only filtered answer data         are conveyed to the user's computer.     -   30. Voice Generation Software. The text of the answer passes         through Voice Generation Software 30 (examples are ViaVoice         software from IBM Corporation, or Dragon NaturallySpeaking from         Dragon Systems).     -    Input: Plain text.     -    Output: Voice signal.     -   31. Speaking Device. Speaking Device 31 delivers the voice to         the user by generating audio frequency waves. Examples include,         but not limited, to telephone or cell phone speaker, computer         speaker, or headset speaker. The component includes also the         sound card if it is used with the computer.     -    Input: Voice signal.     -    Output: Audio signal.

EXAMPLES OF USER-SAS INTERACTION Example 1

The solutions for the user problems are found in the Semantic Database.

Step No. 1 SAS:

-   -   “Hello, Dr. Smith!”

Step No. 2 User:

-   -   “How can I reduce cholesterol?”

Step No. 3 SAS:

-   -   “Reduce cholesterol?” (pause)

Step No. 4 SAS:

-   -   “Dietary measure-reduce-cholesterol saturation”     -   “Clofibrate-reduce-cholesterol”     -   “Saturation-reduce-serum cholesterol level”     -   “Talk with you later”

Step No. 5 User:

-   -   “Hello?”

Step No. 6 SAS:

-   -   “Yes, Dr. Smith!”     -   Step No. 7 <Going to step 2 user asks another question>

Example 2

The solutions for the user problems are not found in the Semantic Database.

Step No. 1 SAS:

-   -   “Hello, Dr. Smith!”

Step No. 2 User:

-   -   “How to cure West Nile encephalitis?”

Step No. 3 SAS:

-   -   “Cure West Nile encephalitis?” (pause)

Step No. 4 SAS:

-   -   “Currently there are no solutions of the problem “Cure West Nile         encephalitis” in Semantic Database. Do you want to initiate the         search over the Internet?”

Step No. 5 User:

-   -   “Yes”

Step No. 6 SAS:

-   -   “I will inform you when the solution becomes available. Talk         with you later.”

Step No. 7 SAS continues to search for solutions. The solutions for the user problem later appear available in the Semantic Database.

SAS calls to the user:

Step No. 8 SAS:

-   -   “Hello, Dr. Smith! 10 minutes ago you were interested in the         problem “Cure West Nile encephalitis”. Currently we have the         following solutions:         -   a. X cures West Nile encephalitis.         -   b. Y cures West Nile encephalitis.         -   c. Z cures West Nile encephalitis.”

As mentioned above, the SAS can handle different types of formatted queries. For example, each of the following would respond to user as above.

Different Types of Formatted Questions

Example 3

(S-A-X) query format

-   -   Question: What does aspirin cause?     -   S-aspirin, A-cause     -   Answers:     -   a. Aspirin-cause-gastric damage     -   b. Aspirin-cause-stomach bleeding     -   c. Aspirin-cause-stomach irritation

Example 4

(S-X-X) query format

-   -   Question: What does aspirin do?     -   S-aspirin     -   Answers:     -   a. Aspirin-reduce-headache     -   b. Aspirin-prevent-pregnancy loss     -   c. Aspirin-reduce-risk of cataract development

Example 5

(S-X-O) query format

-   -   Question: What are the relations between aspirin and asthma?     -   S-aspirin, O-asthma     -   Answers:     -   a. Aspirin-induce-asthma     -   b. Aspirin-trigger-asthma attack

Alternate Embodiment

An alternate embodiment is shown in FIG. 3 in which user PC or device transmits the query in plain text. The query is processed and the problem statement generated in server 36 and the SAO, whether stored in database 27 or acquired from the World Wide Web and stored in database 27, is transmitted HTML page by server 36. The remainder of the system functions as mentioned above with this arrangement, all semantic software and problem-solution statements processing is located at the server instead of each users apparatus.

Possible Applications

Semantic chip for mobile and other devices.

This chip delivers the following functionality:

-   -   Speech to Text Conversion     -   Problem Statement based on the semantic algorithms     -   Transmission of the problem through the web to the Semantic         Server     -   Receiving of the solution from the Semantic Server through the         web     -   Solutions filtering     -   Text to Speech conversion         This corresponds to the FIG. 2 components 23, 24, 25, 28, 29,         and 30 preferably in one chip as the users terminal or cell         phone. Alternately, filtering can be done at the Semantic Server         instead of the user's PC or chip.         Self-Growing Semantic Networks

Whenever each user asks the SAS a new question or new solutions to old questions appear in the Semantic Server, the server adds them to the Semantic database. As Semantic Database grows and stores more and more content S-A-O's, the probability of the available solution increases over time.

Semantic Updating or News Networks

Example 3

Original user is interested in the specific problem A-O. After initially serving the original user, the Semantic Server continues to track the appearance of any new S-A-O solutions that did not exist in the database before the original user was served. This updating happens either on a regular basis or during processing the relevant A-O queries of other users. The original user is automatically informed that the new solution is available.

For details of suitable semantic processing systems and the S-A-O format, see U.S. patent application Ser. Nos. 09/321,804, filed May 27, 1999 and 09/541,182, filed Apr. 3, 2000, and the Knowledgist® Software and COBRAIN® Software marketed by Invention Machine Corporation of Boston, Mass. and used to support Invention Machine's website www.cobrain.com. See also U.S. patent application Ser. No. 09/815,260, filed Mar. 22, 2001 for further SAO processing, query recognition, and expanded SAO query search capabilities.

Various improvements and modifications can be made to the herein disclosed exemplary embodiments without departing from the scope of the present invention. 

1. A semantic answering system that returns natural language answers in an S-A-O (subject-action-object) format in response to a natural language question, wherein the S-A-O format represents semantic relationships between the S, A, and O elements, the system comprising: a problem statement generator that processes the natural language question to extract a problem statement in a format X-A-O, S-A-X, S-X-O, or S-X-X, wherein S, A, and O are semantic elements in the natural language question, X indicates absence of an S, A, or O; a knowledge base comprising an answer database including a set of answer S-A-Os and, for each answer S-A-O, a link to a source document; a semantic server configured to perform a non-keyword query of the knowledge base using the semantic elements and semantic relationships from the problem statement to find at least one answer S-A-O, wherein the at least one answer S-A-O includes the A and O, S and A, S and O, or S from the problem statement and an S, A, or O to replace each X in the problem statement, thereby completing the S-A-O format; and a communication device configured to output the at least one answer S-A-O to a computer.
 2. A system as set forth in claim 1, wherein said server is configured to conduct a search of the World Wide Web, identify documents that include new answer S-A-O's each comprising query elements in the problem statement, store links to such documents, and add such new answer S-A-O's to the knowledge base.
 3. A system as set forth in claim 1, wherein the user apparatus converts human voice signals into said problem statement.
 4. A system as set forth in claim 1, wherein the user apparatus converts the at least one answer S-A-O into audio signals.
 5. A system as set forth in claim 1, wherein said user apparatus includes voice-to-text and text-to-voice recognition capability and a client software module including the problem statement generator.
 6. A system as set forth in claim 1, wherein said user apparatus includes a user digital computer for generating said problem statement and receiving said at least one answer S-A-O.
 7. A system as set forth in claim 6, wherein said user apparatus further includes at least one user input device that includes a human voice to signal converter or a keyboard.
 8. A system as set forth in claim 6, wherein said user apparatus further includes at least one user input device that includes a signal to audio converter or a visual display monitor.
 9. A system as set forth in claim 1, wherein each of the at least one answer S-A-Os is represented in a sentence format.
 10. In a digital computing system, a semantic answering method that returns natural language answers in an S-A-O (subject-action-object) format in response to a natural language question, wherein the S-A-O format represents semantic relationships between the S, A, and O elements, the method comprising: processing the natural language question to extract a problem statement in a format X-A-O, S-A-X, S-X-O, or S-X-X, wherein S, A, and O are semantic elements in the natural language question, X indicates absence of an S, A, or O; providing a knowledge base comprising an answer database including a set of answer S-A-Os and, for each answer S-A-O, a link to a source document; performing a non-keyword query of the knowledge base using the semantic elements and semantic relationships from the problem statement to find at least one answer S-A-O, wherein the at least one answer S-A-O includes the A and O, S and A, S and O, or S from the problem statement and an S, A, or O to replace each X in the problem statement, thereby completing the S-A-O format; and outputting the at least one answer S-A-O to a computer.
 11. A method as set forth in claim 10, further comprising searching the World Wide Web, identifying documents that include new answer S-A-O's each comprising query elements in the problem statement, storing links to such documents, and adding such new answer S-A-O's to the knowledge base.
 12. A method as set forth in claim 10, further comprising converting human voice signals into said problem statement.
 13. A method as set forth in claim 10, further comprising converting the at least one answer S-A-O into audio signals or visual display.
 14. A method as set forth in claim 13, wherein generating the audio signals or visual display includes converting text-to-audio or voice-to-text.
 15. A method as set forth in claim 10, wherein generating the problem statement includes converting voice-to-text.
 16. A system enabling a user to ask a question (query) and for providing the user with one or more answers or in the form of solutions to such question, the system comprising: a knowledge base comprising a set of answers having the form S-A-O (subject-action-object), and further comprising links to documents corresponding to the set of answers; a problem statement generator configured to receive a natural language query from a user apparatus and to automatically generate a problem statement as a query in the form A-O, S-A, S-X-O or S, where S, A and O are query elements in the natural language query, where X indicates absence of a query element; a server coupled to the knowledge base, the server configured to search the knowledge base using the problem statement to find at least one S-A-O answer, wherein the A and O, or S and A, or S and O or S query elements in the problem statement are also in the at least one S-A-O answer, wherein the at least one S-A-O answer includes a statement extracted from a document that provides a solution solicited by the natural language question; and a communication device configured to transmit the at least one answer S-A-O and associated active document links to the user apparatus, wherein said server is configured to conduct a search of the World Wide Web, identify documents that include new answer S-A-O's each comprising query elements in the problem statement, store links to such documents, and add such new answer S-A-O's to the knowledge base, and wherein said server is also configured to conduct said search of the World Wide Web automatically in response to the server determining that no answer S-A-Os exist in the knowledge base comprising the query elements in the problem statement.
 17. A system enabling a user to ask a question (query) and for providing the user with one or more answers or in the form of solutions to such question, the system comprising: a knowledge base comprising a set of answers having the form S-A-O (subject-action-object), and further comprising links to documents corresponding to the set of answers; a problem statement generator configured to receive a natural language query from a user apparatus and to automatically generate a problem statement as a query in the form A-O, S-A, S-X-O or S, where S, A and O are query elements in the natural language query, where X indicates absence of a query element; a server coupled to the knowledge base, the server configured to search the knowledge base using the problem statement to find at least one S-A-O answer, wherein the A and O, or S and A, or S and O or S query elements in the problem statement are also in the at least one S-A-O answer, wherein the at least one S-A-O answer includes a statement extracted from a document that provides a solution solicited by the natural language question; and a communication device configured to transmit the at least one answer S-A-O and associated active document links to the user apparatus, wherein said server is configured to conduct a search of the World Wide Web, identify documents that include new answer S-A-O's each comprising query elements in the problem statement, store links to such documents, and add such new answer S-A-O's to the knowledge base, and wherein said server is programmed to prompt the user for a command to initiate the search of the World Wide Web.
 18. In a digital computing system, a method enabling a user to input a question (query) and providing the user with one or more answers or solutions to such query, the method comprising: receiving a natural language user query that includes one or more query elements in the form of A-O, S-A, S-X-O, or S, where X indicates absence of a query element; providing a knowledge base of semantically and automatically processed information including a set of answers in the form of S-A-O's (subject-action-object), and further comprising active links to documents corresponding to the set of answers; automatically generating a problem statement in the form A-O, S-A, S-X-O or S from the natural language query, where S, A and O are query elements in the natural language query; using the problem statement, identifying in the knowledge base at least one answer S-A-O, wherein the A and O, or S and A, or S and O, or S query elements in the problem statement are also in the at least one S-A-O answer; transmitting signals representative of the at least one answer S-A-O to the user apparatus; and searching the World Wide Web, identifying documents that include new answer S-A-O's each comprising query elements in the problem statement, storing links to such documents, and adding such new answer S-A-O's to the knowledge base, including initiating said searching automatically in response to determining that no answer S-A-Os exist in the knowledge base that include the query elements in the problem statement.
 19. In a digital computing system, a method enabling a user to input a question (query) and providing the user with one or more answers or solutions to such query, the method comprising: receiving a natural language user query that includes one or more query elements in the form of A-O, S-A, S-X-O, or S, where X indicates absence of a query element; providing a knowledge base of semantically and automatically processed information including a set of answers in the form of S-A-O's (subject-action-object), and further comprising active links to documents corresponding to the set of answers; automatically generating a problem statement in the form A-O, S-A, S-X-O or S from the natural language query, where S, A and O are query elements in the natural language query; using the problem statement, identifying in the knowledge base at least one answer S-A-O, wherein the A and O, or S and A, or S and O, or S query elements in the problem statement are also in the at least one S-A-O answer; transmitting signals representative of the at least one answer S-A-O to the user apparatus; and searching the World Wide Web, identifying documents that include new answer S-A-O's each comprising query elements in the problem statement, storing links to such documents, and adding such new answer S-A-O's to the knowledge base, including prompting the user for a command to initiate the searching of the World Wide Web.
 20. A method of providing one or more solutions in response to a user query, the method comprising: providing a knowledge base of semantically and automatically processed information including a set of answers in an S-A-O (subject-action-object) format, and further comprising active links to documents corresponding to the set of answers; processing a natural language user query at a user device, including generating a problem statement in the form A-O, S-A, S-X-O or S from the natural language user query, where S, A and O are query elements in the natural language query and X indicates absence of a query element, converting the problem statement into a URL query, and sending the URL query to a semantic server having access to the knowledge base; generating a non-keyword knowledge base query from the URL query at the semantic server and searching the knowledge base using the semantic elements and semantic relationships from the problem statement to find one or more answer S-A-O, wherein the one or more answer S-A-O includes the A and O, S and A, S and O, or S from the problem statement and an S, A, or O to replace each X in the problem statement, thereby completing the S-A-O format; and if the one or more answer S-A-O is found, converting the one or more answer S-A-O into at least one HTML page and sending the at least one HTML page to the user device; and processing the at least one HTML page at the user device to output the one or more answer S-A-O to the user query. 